﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DTO;
using BUS;
using TuyenDungViecLam.CommonResource;
//Dang Khoa
namespace TuyenDungViecLam.User_control_VN
{
    public partial class ThanhToan : System.Web.UI.UserControl
    {


        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                LienKetDuLieu(sender, e);
            }
        }

        private void LienKetDuLieu(object sender, EventArgs e)
        {
            DSPhiddr.DataSource = Phi_BUS.DanhSachPhi();
            DSPhiddr.DataTextField = "Ten";
            DSPhiddr.DataValueField = "GiaVaThoiHan";
            DSPhiddr.DataBind();
            DSPhiddr_SelectedIndexChanged(sender, e);
        }

        protected void KiemTrabtn_Click(object sender, EventArgs e)
        {

            try
            {
                if (CardNumbertxt.Text != "" && Passwordtxt.Text != "")
                {
                    string cardNumber = (CardNumbertxt.Text).ToString();
                    string password = (Passwordtxt.Text).ToString();

                    int kiemTraSoTaiKhoan = KiemTraSoTaiKhoanHopLe(cardNumber);
                    if (kiemTraSoTaiKhoan == 1)
                    {
                        if (KiemTraTaiKhoan(cardNumber, password) == 1)
                        {
                            BankAccount account = new BankAccount();
                            account = BUS.NhaTuyenDung_BUS.LayThongTinTaiKhoan(cardNumber);



                            SoTienlbl.Text = account.Balance.ToString();

                            TaiKhoandiv.Visible = false;
                            ChuyenTiendiv.Visible = true;
                        }
                    }
                    else if (kiemTraSoTaiKhoan == 2)
                    {
                        string Message = "Lỗi kết nối dịch vụ thanh toán trực tuyến của ngân hàng !";
                        Alert.Show(Message);
                    }
                    else if (kiemTraSoTaiKhoan == 0)
                    {
                        string Message = "Số tài khoản không hợp lệ, vui lòng nhập lại !";
                        Alert.Show(Message);
                    }
                }
                else
                {
                    string Message = "Vui lòng điền đầy đủ thông tin để được thanh toán !";
                    Alert.Show(Message);
                }

            }
            catch
            {
                return;
            }
        }

        private int KiemTraSoTaiKhoanHopLe(string cardNumber)
        {
            return BUS.NhaTuyenDung_BUS.KiemTraSoTaiKhoanHopLe(cardNumber);
        }

        private int KiemTraTaiKhoan(string cardNumber, string password)
        {
            int ketqua = 0;
            try
            {

                ketqua = BUS.NhaTuyenDung_BUS.KiemTraTaiKhoan(cardNumber, password);

            }
            catch
            {
                return 0;
            }
            return ketqua;
        }



        protected void ChuyenTienbtn_Click(object sender, EventArgs e)
        {
            int ketqua = 0;

            try
            {
                if (TaiKhoanNhantxt.Text != "")
                {
                    string taiKhoanNhan = (TaiKhoanNhantxt.Text).ToString();
                    string soTien = "";
                    string ThoiGian = "";
                    LayGiaVaThoiGian(ref soTien, ref ThoiGian, DSPhiddr.SelectedItem.Value.ToString());
                    BankAccount nguoiNhan = new BankAccount();
                    //kiem tra so tai khoan hop le
                    int kiemTraSoTaiKhoanHople = BUS.NhaTuyenDung_BUS.KiemTraSoTaiKhoanHopLe(taiKhoanNhan);
                    if (kiemTraSoTaiKhoanHople == 1)
                    {

                        nguoiNhan = BUS.NhaTuyenDung_BUS.LayThongTinTaiKhoan(taiKhoanNhan);

                        //ChuyenTienbtn.Attributes.Add("onclick", " return confirm(\" Bạn có đồng ý chuyển " + soTien + " (VND) tới " + nguoiNhan.Owner + " ?\"");
                        //if (Convert.ToBoolean(ChuyenTienbtn.Attributes["onclick"].ToString()) == true)
                        //{
                        int maPhi = Convert.ToInt32(DSPhiddr.SelectedIndex) + 2;
                        int userid = Convert.ToInt32(Session["UserID"]);
                        DateTime ngayBatDau = System.DateTime.Now;

                        //kiem tra dong phi
                        int kiemTraDongPhi = DongPhi(userid, maPhi, ngayBatDau, "Chuyển Khoản");


                        if (kiemTraDongPhi == 0)
                        {
                            TaiKhoandiv.Visible = false;
                            ChuyenTiendiv.Visible = false;
                            thongbao.Visible = true;
                            lbthongbao.ForeColor = System.Drawing.Color.Red;
                            lbthongbao.Text = "Hiện giờ không thể đóng phí, bạn đã thanh toán rồi";
                            QuayVeTrangChu.Visible = true;
                            //Response.Write("<script type=\"text/javascript\"> alert(\"Hiện giờ không thể đóng phí !\"); </script>");
                            return;
                        }
                        else if (kiemTraDongPhi == 2)
                        {
                            TaiKhoandiv.Visible = false;
                            ChuyenTiendiv.Visible = false;
                            thongbao.Visible = true;
                            lbthongbao.ForeColor = System.Drawing.Color.Red;
                            QuayVeTrangChu.Visible = true;
                            lbthongbao.Text = "Lỗi kết nối dịch vụ thanh toán trực tuyến của ngân hàng, vui lòng quay lại sau";
                            //Response.Write("<script type=\"text/javascript\"> alert(\"Không thể kết nối với dữ liệu !\"); </script>");
                            return;

                        }

                        else if (kiemTraDongPhi == 1)
                        {
                            ketqua = BUS.NhaTuyenDung_BUS.ChuyenTien(CardNumbertxt.Text.ToString(), soTien, taiKhoanNhan);
                            if (ketqua == 1)
                            {
                                TaiKhoandiv.Visible = false;
                                ChuyenTiendiv.Visible = false;
                                thongbao.Visible = true;
                                lbthongbao.ForeColor = System.Drawing.Color.Red;
                                lbthongbao.Text = "Bạn vừa chuyển " + soTien + " (VND) tới " + nguoiNhan.Owner;
                                QuayVeTrangChu.Visible = true;
                                //Response.Write("<script type=\"text/javascript\"> alert(\" Bạn vừa chuyển " + soTien + " (VND) tới " + nguoiNhan.Owner + " !\"); </script>");


                            }
                            else if (ketqua == 2)
                            {
                                TaiKhoandiv.Visible = false;
                                ChuyenTiendiv.Visible = false;
                                thongbao.Visible = true;
                                lbthongbao.ForeColor = System.Drawing.Color.Red;
                                QuayVeTrangChu.Visible = true;
                                lbthongbao.Text = "Lỗi kết nối dịch vụ thanh toán trực tuyến của ngân hàng, vui lòng quay lại sau";
                                //Response.Write("<script type=\"text/javascript\"> alert(\"Lỗi kết nối dịch vụ thanh toán trực tuyến của ngân hàng !\"); </script>");

                            }
                            else if (ketqua == 0)
                            {
                                TaiKhoandiv.Visible = false;
                                ChuyenTiendiv.Visible = false;
                                thongbao.Visible = true;
                                lbthongbao.ForeColor = System.Drawing.Color.Red;
                                lbthongbao.Text = "Không thể chuyển tiền vì không đủ tiền !";
                                QuayVeThanhToan.Visible = true;
                            }

                        }
                        //}
                    }
                    else if (kiemTraSoTaiKhoanHople == 0)
                    {
                        string Message = "Số tài khoản không hợp lệ, vui lòng nhập lại !";
                        Alert.Show(Message);
                    }
                }
                else
                {
                    string Message = "Vui lòng nhập số tài khoản nhận !";
                    Alert.Show(Message);
                }

            }
            catch
            {
                return;
            }

        }

        private int DongPhi(int userid, int maPhi, DateTime ngayBatDau, string hinhThucThanhToan)
        {
            int kiemtra = BUS.NhaTuyenDung_BUS.KiemTraDongPhiHopLe(userid);
            if (kiemtra == 1)
            {
                return BUS.NhaTuyenDung_BUS.DongPhi(userid, maPhi, ngayBatDau, hinhThucThanhToan);
            }
            else if (kiemtra == 0)
            {

                return 0;
            }
            else
            {

                return 2;
            }
        }

        public void LayGiaVaThoiGian(ref string Gia, ref string ThoiGian, string str)
        {
            string[] liststr = str.Split(',');
            Gia = liststr[0];
            ThoiGian = liststr[1];
        }

        protected void DSPhiddr_SelectedIndexChanged(object sender, EventArgs e)
        {
            string Gia = "";
            string ThoiGian = "";
            LayGiaVaThoiGian(ref Gia, ref ThoiGian, DSPhiddr.SelectedItem.Value.ToString());
            SoTienChuyenlbl.Text = "Phí cho loại " + DSPhiddr.SelectedItem.Text.ToString() + " với giá là " + Gia + " (VND) có thời hạn " + ThoiGian + " ngày !";
        }

        protected void DSPhiddr_Load(object sender, EventArgs e)
        {
            
        }

        protected void ImageButton3_Click(object sender, ImageClickEventArgs e)
        {
            string url = "ThanhToan.aspx";
            Response.Redirect(url);
        }

        protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
        {
            string url = "TrangChu.aspx";
            Response.Redirect(url);
        }



    }


}